Navigating sections with exposable content in a viewing area

ABSTRACT

The disclosed embodiments include techniques for navigating sections with exposable content in a viewing area. A method includes causing display, on a display device, of a view panel including contiguous sections. Each contiguous section includes a heading bar and content. The method further includes causing a portion of a first content of a first section to display on the display device by positioning a first heading bar of the first section at a first distance from a second heading bar of a second section. In response to a selection of the first heading bar, the first heading bar and/or the second heading bar is repositioned a second distance from each other. The second distance is greater than the first distance such that more of the first content is displayed.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No. 13/874,223, titled “Navigating Scrollable Sections of Content in a Viewing Area,” filed on Apr. 30, 2013, which is incorporated by reference herein in its entirety.

SUMMARY

In accordance with the teachings provided herein, systems and methods for displaying an interface are provided. For example, a system and method can be configured to display a scrollable viewing region. The viewing region can be a fixed size and the viewing region can facilitate displaying underlying content. Underlying content can be divided into multiple sectioned viewing areas, and each sectioned viewing area can have a corresponding heading. Headings can be docked or undocked.

Input corresponding to a scroll movement can be received, and the viewing region can be adjusted according to the scroll movement. Adjusting a viewing region can include shifting the display of the underlying content by docking or undocking headings. Headings can be docked or undocked as they occur in the underlying content.

In some embodiments, when a heading is docked, the corresponding viewing area is not visible or partially visible. In other embodiments, when a heading is undocked, the corresponding viewing area is visible or partially visible. In still other embodiments, multiple headings can be docked or undocked at any point within a viewing region.

In some embodiments, input corresponding to a selection of a heading can be received, and a heading can be docked or undocked in response to the selection. In these embodiments, the scroll movement and the viewing region can be automatically adjusted according to the selected heading.

In some embodiments, docked headings are stacked. In these embodiments, when docked headings are stacked at the bottom of a viewing region, receiving input corresponding to a selection of a bottom docked heading can cause the scroll movement and the viewing region to be downwardly adjusted a minimum distance needed to display the viewing area associated with the selected heading. Additionally, in these embodiments, when docked headings are stacked at the top of a viewing region, receiving input corresponding to a selection of a top docked heading can cause the scroll movement and the viewing region to be upwardly adjusted a minimum distance needed to display the viewing area associated with the selected heading.

In some embodiments, when a viewing area is partially visible, selection of a corresponding heading can cause the partially visible viewing area to become fully visible, and the viewing region to be adjusted a minimum distance needed to display the viewing area associated with the selected heading.

In some embodiments, headings can be concurrently docked at both the top and the bottom of a viewing region. In other embodiments, docked headings can be associated with a graphic indication. In still other embodiments, a viewing area can include one or more graphical elements.

In some embodiments, adjusting a viewing region according to a scroll movement can include an animated effect. In other embodiments, adjusting a viewing region according to a scroll movement can include using a linear or non-linear mapping measured by distance and time.

Particular embodiments of the subject matter described in this specification can be implemented to realize one or more of the following advantages.

The details of one or more embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the invention will become apparent from the description, the drawings, and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an example display of an embedded viewing region.

FIG. 2 shows an example display of a viewing region displaying underlying content and a viewing region that is smaller than the underlying content.

FIG. 3 shows additional example displays of viewing regions that are smaller than the underlying content.

FIG. 4 shows an example display of an interaction with a viewing region.

FIG. 5 shows another example display of an interaction with a viewing region.

FIG. 6 shows an example display of an interaction with a partially hidden viewing area on an viewing region.

FIG. 7 shows another example display of an interaction with a partially hidden viewing area in a viewing region.

FIG. 8A shows an example linear mapping.

FIG. 8B shows an example non-linear mapping.

FIG. 9 shows an example flow chart for interacting with a viewing region.

FIG. 10 shows a block diagram of an example system.

Like reference numbers and designations in the various drawings indicate like elements.

DETAILED DESCRIPTION

FIG. 1 shows an example display 100 of an embedded viewing region (e.g., a viewport). Viewing region 110 can be displayed on any computing device (e.g., laptop, desktop, notebook, or mobile device), and can be interacted with using any peripheral device. Additionally, viewing region 110 can include a touch interface for receiving touch input to facilitate the systems and methods described below.

Viewing region 110 can be scrollable. Additionally, viewing region 110 can be a fixed size. Viewing region 110 can facilitate viewing underlying content. For example, underlying content can be displayed when viewing region 110 is scrolled over the underlying content (e.g., when viewing region 110 is smaller than the underlying content being displayed). Underlying content can be divided into multiple sectioned viewing areas, and each sectioned viewing area can have a corresponding heading. Additionally, headings can be docked or undocked. Sectioned viewing areas and corresponding headings will be discussed in greater detail below.

Viewing region 110 can be embedded or otherwise displayed in relation to other graphical elements. For example, in example display 110, viewing region 110 is embedded within a webpage 120. Viewing regions can include multiple sectioned viewing areas 130, and each sectioned viewing area 130 can have a corresponding selectable heading 140. Selectable headings 140 can be docked. Docked headings can be stacked or affixed to the top or bottom of a viewing region such that they no longer scroll with a viewing region. When a selectable heading is docked, the viewing area corresponding to the selectable heading is not visible. Selectable headings 140 can also be undocked (e.g., unstacked). Undocked headings are not stacked or affixed within a viewing region, and thus they can move or scroll within a viewing region. When a selectable heading is undocked, the viewing area corresponding to the selectable heading is visible. In some implementations, docked headings can be associated with a graphic indication (e.g., a color or shading) of state, such as an error. Headings within a viewing region can be any combination of docked and undocked, including all docked or all undocked. In some implementations, one or more headings can be concurrently docked at both the top and the bottom of a viewing region.

Scrolling within a viewing region can cause headings to become docked (if undocked), or undocked (if docked). Additionally, selection of a docked heading can cause a corresponding hidden or partially hidden viewing area to scroll into view. In some implementations, docking and undocking headings can include an animated effect (e.g., an animated growth or reduction of a viewing area). Docking and undocking headings (and the associated animated effects), can occur at different rates depending on time and distance. Differing rates based on time and distance will be discussed in greater detail with respect to FIGS. 8A and 8B below.

Additionally, in some implementations, an expanded viewing area and content within an expanded viewing area (e.g., one or more graphical elements such as drop down boxes, text, selection boxes, etc.), can be visible or partially visible. For example, selection of heading 150 can cause content 160 within viewing area 130 to become visible when content 160 was partially visible. Partially visibly viewing areas will be discussed in greater detail with respect to FIGS. 6 and 7 below.

Viewing region 110 can include scroll bar 180. Interaction with scroll bar 180 can cause a scrolling effect that corresponds to the entire viewing region 110 including any combination of docked headings (and corresponding non-visible viewing areas), undocked headings, (and corresponding visible viewing areas), partially expanded (e.g., partially visible) viewing areas, and content within visible and partially visible viewing areas. Moving scroll bar 180 up or down can cause the viewing region 110 to be scrolled over the underlying content. As the scroll bar 180 is interacted with or moved within viewing region 110, placement of the viewing region 110 with respect to the underlying content can be adjusted accordingly.

For example, adjusting the viewing region 110 can include shifting the display of the underlying content by docking or undocking one or more headings as they occur in the underlying content. As headings dock, corresponding viewing areas can become non-visible. As headings undock, corresponding viewing areas can become visible. In some implementations, multiple headings can be concurrently docked (e.g., at the top of a viewing region), and undocked (e.g., at the bottom of a viewing region), within a single viewing region. In these implementations, scrolling within the viewing region can cause the headings to undock (e.g., the corresponding viewing areas become visible), or dock (e.g., the corresponding viewing areas become not visible), creating an “accordion”-like effect.

In some implementations, viewing areas can grow and contract with the addition or removal of content, causing the scroll bar 180 to change size according to the size of the viewing region with respect to the underlying content. In other implementations, a scroll bar can disappear (e.g., when the size of the viewing region is the same as the underlying content).

FIG. 2 shows an example display 200 of a viewing region 210 displaying underlying content and a viewing region 220 that is smaller than the underlying content.

In this example display, viewing region 210 is the same size as the underlying content. Thus, all the underlying content is visible. Example display 200 also includes viewing region 220. In this example display, viewing region 220 is smaller than the underlying content that includes a combination of docked headings 230 (corresponding to non-visible content 280), undocked headings 240 (corresponding to visible content 250), and graphical elements 260.

Additionally, viewing region 220 includes scroll bar 270 that can be used to scroll through the visible content within viewing region 220. In this example, the headings labeled “general”, “time range”, and “filter” have been scrolled into view, and thus those headings are undocked and the viewing areas corresponding to those headings are visible. Additionally, the headings labeled “mark”, “x-axis”, “y-axis”, and color have not been scrolled into view, and thus the headings are docked and the viewing areas corresponding to those headings are not visible.

Scroll bar 270 is at the top of viewing region 220, thus the portion of viewing region 220 that is visible is at the top. In this example, moving scroll bar 270 down will also change the portion of viewing region 220 that is visible. Additionally, in this example the headings that are undocked are at the top of viewing region 220, and the headings that are docked are at the bottom of viewing region 220.

FIG. 3 shows additional example display 300 of viewing regions 310 and 350 that are smaller than the underlying content. Viewing region 310 includes a combination of docked headings (corresponding to non-visible content), and undocked headings (corresponding to visible content). Viewing region 310 also includes a scroll bar 320 which is scrolled in this example to the middle of viewing region 310. Additionally, in this example, the headings “general” and “time range” are docked, and thus the viewing areas corresponding to those headings are not visible (as represented by shaded area 330 above those headings). The headings “filter”, “mark”, and “x-axis” have been undocked (e.g., scrolled over), and thus the viewing areas corresponding to those headings are visible. Finally, the headings “y-axis’, and “color” remain docked, thus the viewing areas corresponding to those headings remain non-visible.

Example display 300 also includes viewing region 350. Viewing region 350 includes a combination of docked headings (corresponding to non-visible underlying content), and undocked headings (corresponding to visible underlying content). In this example, headings “general”, “time range”, filter”, “mark”, and “x-axis” are docked, and thus the viewing areas corresponding to those headings are not visible. Additionally, headings “y-axis” and “color” are docked, and thus the viewing areas corresponding to those headings is visible.

In this example, scroll bar 360 is at the bottom of viewing region 350, thus the portion of viewing region 350 that is visible is at the bottom. Moving scroll bar 360 up can change the portion of viewing region 350 that is visible. Shaded area 370 represents the non-visible content corresponding to the docked (e.g., stacked) headings “general”, “time range”, “filter”, “mark”, and “x-axis”. In this example, the shaded areas 330 and 340 represent the non-visible underlying content of the viewing areas corresponding to the docked headings. Because the underlying content remains constant and the display of the underlying content changes as the viewing region is scrolled, the amount of shaded area representing non-visible content, remain constant. Thus, the combined size of shaded areas 330 and 340 is equal in size to individual shaded areas 280 and 370.

As noted above, headings in a viewing region can be docked and stacked within any portion of the viewing region (e.g., the top or the bottom). FIG. 4 shows an example display 400 of an interaction with a viewing region 410. In this example, docked headings 420 are stacked at the bottom of viewing region 410. Selection of a bottom docked heading can cause the bottom of the stack of docked headings 420 to become visible within the viewing region from top down (e.g., downwardly) such that the viewing area corresponding to the selected heading (e.g., “x-axis” 440), is visible 450 beneath the heading and downward with respect to the stack (e.g., as shown on viewing region 430).

FIG. 5 shows another example display 500 of an interaction with an viewing region 510. In this example, docked headings 530 are stacked at the top of viewing region 510. Selection of a top docked heading can cause the top of the stack of docked headings 530 to become visible within the viewing region from bottom up (e.g., upwardly) such that the viewing area corresponding to the selected heading (e.g., “mark” 540), is visible 550 beneath the heading and upward with respect to the stack (e.g., as shown on viewing region 520).

In these examples in FIGS. 4 and 5, the scroll movement and the viewing region can be automatically adjusted (e.g., downwardly or upwardly) according to the selected heading. As docked headings are selected, corresponding viewing areas within a viewing region can become visible. Additionally, the scroll bar associated with the viewing region and the visible portion of the underlying content can be adjusted. Thus, when a heading is selected, the scroll bar can scroll a minimum distance necessary to display the viewing area associated with the selected heading. When a scroll bar scrolls in either direction, the viewing region can adjust or move accordingly with respect to the underlying content. As the viewing region is adjusted, headings within the viewing region can dock and undock, and viewing areas corresponding to the headings can become visible (when the heading is undocked), and non-visible (when the heading is docked).

FIG. 6 shows an example display 600 of an interaction with a partially hidden (e.g., partially visible) viewing area 620 on an viewing region 610. In some implementations, a viewing area is partially visible. For example, a viewing area can be partially visible when the underlying content is taller or larger than the viewing region (less the heights of the docked headings). Selection of a heading corresponding to a partially hidden viewing area (e.g., “x-axis” 630), can cause the remainder of the viewing area to become visible 650 (as shown in viewing region 640). Additionally, the scroll bar associated with the viewing region and the visible portion of the underlying content can be adjusted. Thus, when a heading is selected, the scroll bar can scroll a minimum distance necessary to display the viewing area associated with the selected heading.

FIG. 7 shows another example display 700 of an interaction with a partially hidden viewing area 730 on an viewing region 710. In this example, viewing area 730 is larger than the available space between headings, thus the entire viewing area 730 is not fully (e.g., partially) visible. Selection of the heading corresponding to the partially hidden viewing area (e.g., “filter” 740) can cause more of the viewing area to become visible 750 (as shown in viewing region 720). Additionally, the scroll bar associated with the viewing region and the visible portion of the underlying content can be adjusted. In this example, when the heading is selected, the scroll bar can scroll to the top portion of the viewing area. Thus, more of the viewing area corresponding to the selected heading is visible and scrollable. To accommodate the additional viewing area, other headings can become docked and the viewing areas corresponding to other headings can be made non-visible (e.g., viewing areas corresponding to the “general” and “time range” headings can become non-visible).

As noted above, expanding and contracting viewing areas (and the associated animated effects), can occur at different rates depending on time and distance. FIG. 8A shows an example linear mapping 800. In some implementations, the size of the entire viewing region can be measured in pixels (px). Distance can be measured using any unit (e.g., em, inch, etc.). Additionally, the amount of time it takes to expand or contract a viewing area can be measured in milliseconds (ms). Time can be measured using any measure of time (e.g., seconds, etc.). Using a linear mapping, a range of pixels can be selected, and an amount of time in ms can be selected. A measurement of a viewing area can be taken, and a total amount of time to adjust the viewing region can be determined. Using this information, a linear mapping can be generated.

For example, using linear mapping 800, a range of pixels (e.g., 100 px to 700 px pixels) has been selected. An amount of time (e.g., 300 ms to 600 ms), time has been selected. Evenly dividing the amount of time allows a mapping to be generated. In this example, 400 px is the center of the px scale, and 450 ms is the center of the time scale. Thus, using this linear mapping, it would take 450 ms to adjust the viewing region for a viewing area of 400 px. Additionally, in this example, a continued linear division would show that it would take 525 ms to adjust the viewing region for a viewing area of 550 px.

FIG. 8B shows an example non-linear mapping 810. Using a non-linear mapping, a range of pixels (px) can be defined, and an amount of time in milliseconds (ms) can be defined. A measurement of a viewing area can be taken, and a total amount of time to adjust the viewing region can be determined. Using this information, a non-linear mapping can be generated by assigning a distance (in px) to a time (in ms) and then evenly mapping from the assigned points.

For example, using non-linear mapping 810, a range of pixels (e.g., 100 px to 700 px pixels) has been selected. An amount of time (e.g., 300 ms to 600 ms), time has been selected. Additionally, distance 400 px has been assigned to time 375 ms. Thus, using this non-linear mapping, it would take 450 ms to adjust the viewing region for a viewing area of 375 px. Additionally, in this example, a continued division (e.g., an even division based on the assigned px/ms for the mapping), would show that it would take 450 ms to adjust the viewing region for a viewing area of 550 px. In some implementations, mappings can vary based on type of device or pre-determined preferences.

Evenly dividing the amount of time allows a mapping to be generated. In this example, 400 px is the center of the px scale, and 450 ms is the center of the time scale. Thus, using this linear mapping, it would take 450 ms to adjust the viewing region for a viewing area of 400 px. Additionally, in this example, a continued linear division would show that it would take 525 ms to adjust the viewing region for a viewing area of 550 px.

In some implementations, adjusting viewing areas can occur (e.g., begin, end, or begin and end), with an animated effect. Animated effects can include a slow break (e.g., a de-acceleration), an acceleration, a constant rate (e.g., an even expansion), or a bounce or other animated effect indicative of a completion of an expansion or contraction of a viewing area.

FIG. 9 shows an example flow chart 900 for interacting with an viewing region. Interacting with an viewing region can begin when an viewing region is generated and displayed 910 by the system. The viewing region can be scrollable and the viewing region can be a fixed size. The viewing region can facilitate displaying underlying content divided into multiple sectioned viewing areas, and each sectioned viewing area can have a corresponding heading. Additionally, the headings can be docked or undocked.

Once the viewing region is displayed, input corresponding to a scroll movement can be received 920. The viewing region can then be adjusted 930 according to the scroll movement. Adjusting a viewing region can include shifting the display of the underlying content by docking or undocking one or more headings as they occur in the underlying content.

FIG. 10 provides a block diagram of a computer system 1000 for implementing functions and operations as described herein. The computer system 1000 may implement, for example, the viewing region within a graphical interface, as illustrated in FIG. 1. It should be noted that FIG. 10 is meant only to provide a generalized illustration of various components, any or all of which may be utilized as appropriate. FIG. 10, therefore, broadly illustrates how individual system elements may be implemented in a relatively separated or relatively more integrated manner.

The system 1000 is shown comprising hardware elements that can be electrically coupled via a system bus 1026 (or may otherwise be in communication, as appropriate). The hardware elements can include one or more central processor units (CPUs) 1002, including without limitation one or more general-purpose processors and/or one or more special-purpose processors (such as communication processing chips, graphics acceleration chips, and/or the like); one or more input devices 1004, that can include, without limitation, a mouse, a keyboard, and/or the like; and one or more output devices 1006, which can include without limitation a display device, a printer, audio device, and/or the like.

The computer system 1000 may further include (and/or be in communication with) one or more storage devices 1008, which can comprise, without limitation, local and/or network accessible storage and/or can include, without limitation, a disk drive, a drive array, an optical storage device, solid-state storage device such as a random access memory (“RAM”), and/or a read-only memory (“ROM”), which can be programmable, flash-updateable, and/or the like. The computer system 1000 might also include a communications subsystem 1014, which can include without limitation a modem, a network card (wireless or wired), an infra-red communication device, a wireless communication device and/or chipset (such as a Bluetooth device, an 802.11 device, a WiFi device, a WiMax device, cellular communication facilities, etc.), and/or the like. The communications subsystem 1014 may permit data to be exchanged with a network 1015, and/or any other devices described herein. The network 1015 may comprise a local area network (LAN) or a network such as the Internet, or a combination. In many embodiments, the computer system 1000 will further include a working memory 1018, which can include a RAM or ROM device, as described above.

The computational system 1000 also may comprise software elements, shown as being currently located within the working memory 1018, including an operating system 1024 and/or other program code, such as one or more application programs 1022, which may comprise computer programs performing tasks and operations described above, and/or may be designed to implement methods in accordance with the disclosed subject matter and/or systems in accordance with the disclosed subject matter, as described herein. Merely by way of example, one or more procedures described with respect to the method(s) discussed above might be implemented as code and/or instructions executable by a computer (and/or a processor within a computer). In one embodiment, the data generating and presenting operations are implemented as application programs 1022. In the description herein, references to “interface” and “processor” and “application” should be understood as referring to hardware, software, and combinations of the two, either as independent components (hardware, software, and/or both) for each interface, processor, or application, or as integrated components combined with one or more other components.

A set of these instructions and/or code may be stored on a computer readable storage medium 1010 b. In some embodiments, the computer readable storage medium 1010 b may comprise the storage device(s) 1008 described above. In other embodiments, the computer readable storage medium 1010 b might be incorporated within the computer system. In still other embodiments, the computer readable storage medium 1010 b might be separate from the computer system (i.e., it may be a removable readable medium, such as a compact disc, etc.), and or might be provided in an installation package, such that the storage medium can be used to program a general purpose computer with the instructions/code stored thereon. These instructions might take the form of executable code, which is executable by the computer system 1000 and/or might take the form of source and/or installable code, which, upon compilation and/or installation on the computer system 1000 (e.g., using any of a variety of generally available compilers, installation programs, compression/decompression utilities, etc.), then takes the form of executable code. In these embodiments, the computer readable storage medium 1010 b may be read by a computer readable storage media reader 1010 a.

It will be apparent that variations may be made in accordance with specific requirements. For example, customized hardware might also be used, and/or particular elements might be implemented in hardware, software (including portable software, such as applets, etc.), or both. Further, connection to other computing devices such as network input/output devices may be employed.

In one embodiment, local and remote computer systems (such as the computer system 1000) are utilized to perform methods of the disclosed subject matter. According to a set of embodiments, some or all of the procedures of such methods are performed by the computer system 1000 in response to the processor 1002 executing one or more sequences of one or more instructions (which might be incorporated into the operating system 1024 and/or other code, such as an application program 1022) contained in the working memory 1018. Such instructions may be read into the working memory 1018 from another machine-readable medium, such as one or more of the storage device(s) 1008 (or 1010). Merely by way of example, execution of the sequences of instructions contained in the working memory 1018 might cause the processor(s) 1002 to perform one or more procedures of the methods described herein.

The terms “machine readable medium” and “computer readable medium,” as used herein, refer to any medium that participates in providing data that causes a machine to operate in a specific fashion. In an embodiment implemented using the computer system 1000, various machine-readable media might be involved in providing instructions/code to processor(s) 1002 for execution and/or might be used to store and/or carry such instructions/code (e.g., as data transmissions or data communications). In many implementations, a computer readable medium is a physical and/or tangible storage medium. Such a medium may take many forms, including but not limited to, volatile and non-volatile media. Non-volatile computer-readable media includes, for example, optical or magnetic disks, such as the storage device(s) (1008 or 1010). Volatile computer-readable media includes, without limitation, dynamic memory, such as the working memory 1018. In some implementation, data may be carried over transmission media. Transmission media includes coaxial cables, copper wire, and fiber optics, including the wires that comprise the bus 1026, as well as the various components of the communication subsystem 1014 (and/or the media by which the communications subsystem 1014 provides communication with other devices). Hence, transmission media can also take the form of waves (including, without limitation, radio, acoustic, and/or light waves, such as those generated during radio-wave and infra-red data communications).

Common forms of physical and/or tangible non-volatile computer readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punchcards, papertape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EPROM, any other memory chip or cartridge, or any other medium from which a computer can read instructions and/or code.

Various forms of machine-readable media may be involved in carrying one or more sequences of one or more instructions to the processor(s) 1002 for execution. Merely by way of example, the instructions may initially be carried on a magnetic disk and/or optical disc of a remote computer. A remote computer might load the instructions into its dynamic memory and send the instructions communications over a transmission medium to be received and/or executed by the computer system 1000. These communications, which might be in the form of electromagnetic communications, acoustic communications, optical communications, and/or the like, are all examples of carrier waves on which instructions can be encoded, in accordance with various embodiments of the disclosed subject matter.

The communications subsystem 1014 (and/or components thereof) generally will receive the communications, and the bus 1026 then might carry the communications (and/or the data, instructions, etc. carried by the communications) to the working memory 1018, from which the processor(s) 1002 retrieves and executes the instructions. The instructions received by the working memory 1018 may optionally be stored on a storage device 708 either before or after execution by the processor(s) 1002.

It will be appreciated that many processing capabilities in addition to those described are possible, without departing from the teachings according to the disclosed subject matter. Further, it should be noted that the methods, systems, and devices discussed above are intended merely to be examples. Various embodiments may omit, substitute, or add various procedures or components as appropriate. For example, it should be appreciated that, in alternative embodiments, the methods may be performed in an order different from that described, and that various steps may be added, omitted, or combined. Also, features described with respect to certain embodiments may be combined in various other embodiments. Different aspects and elements of the embodiments may be combined in a similar manner. Also, it should be emphasized that technology evolves and, thus, many of the elements are examples and should not be interpreted to limit the scope of the disclosed subject matter.

Specific details are given in the description to provide a thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details.

Also, it is noted that the embodiments may be described as a process which is depicted as a flow diagram or block diagram. Although each may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be rearranged. A process may have additional steps not included in the figures.

Other variations are within the spirit of the present disclosed subject matter. Thus, while the disclosed subject matter is susceptible to various modifications and alternative constructions, certain illustrated embodiments thereof are shown in the drawings and have been described above in detail. It should be understood, however, that there is no intention to limit the disclosed subject matter to the specific form or forms disclosed, but on the contrary, the intention is to cover all modifications, alternative constructions, and equivalents falling within the spirit and scope of the disclosed subject matter, as defined in the appended claims.

Recitation of ranges of values herein are merely intended to serve as a shorthand method of referring individually to each separate value falling within the range, unless otherwise indicated herein, and each separate value is incorporated into the specification as if it were individually recited herein. All methods described herein can be performed in any suitable order unless otherwise indicated herein or otherwise clearly contradicted by context. 

What is claimed is:
 1. A computer-implemented method comprising: causing display, on a display device, of a view panel including a plurality of contiguous sections, each of which includes a heading bar and content; causing a portion of a first content of a first section of the plurality of contiguous sections to display on the display device by positioning a first heading bar of the first section at a first distance from a second heading bar of a second section; and responsive to a selection of the first heading bar, repositioning at least one of the first heading bar or the second heading bar a second distance from each other, the second distance being greater than the first distance such that more than the portion of the first content is displayed.
 2. The method of claim 1, wherein the second distance is a minimum distance needed to fully display the first content of the first section.
 3. The method of claim 1, wherein the second distance is a minimum distance needed to display a remainder of the first content of the first section.
 4. The method of claim 1, wherein the repositioning comprises: repositioning the first heading bar while the second heading bar remains stationary.
 5. The method of claim 18, wherein the repositioning comprises: repositioning the second heading bar while the first heading bar remains stationary.
 6. The method of claim 1, wherein the repositioning comprises: repositioning each of the second heading bar and the first heading bar.
 7. The method of claim 1 further comprising: docking the first heading bar by repositioning the first heading bar at a location adjacent to an end of the view panel such that the first content is hidden.
 8. The method of claim 1 further comprising: stacking the first heading bar on the second heading bar by repositioning at least one of the first heading bar at a location adjacent to the second heading bar such that the first content is hidden.
 9. The method of claim 1, wherein all the content of the plurality of contiguous sections is only partially viewable at any time in the view panel.
 10. The method of claim 1 further comprising: receiving a selection of a third heading bar that is docked; and in respond to the selection of the third heading bar, causing the third heading bar to undock.
 11. The method of claim 1, wherein a plurality heading bars of the plurality of contiguous sections are docked as a stack between the first heading bar and an end of the view panel.
 12. The method of claim 1, wherein a plurality heading bars of the plurality of contiguous sections are docked in a plurality stacks between opposing ends of the view panel.
 13. The method of claim 1, wherein the plurality of contiguous sections is a plurality of contiguous scrollable sections.
 14. The method of claim 1, wherein positioning the first heading bar at the first distance from the second heading bar comprises: scrolling the first heading bar relative to the second heading bar.
 15. The method of claim 1, wherein positioning the first heading bar at the first distance from the second heading bar comprises: scrolling the first heading bar away from the second heading bar.
 16. The method of claim 1, wherein positioning the first heading bar at the first distance from the second heading bar comprises: scrolling the first heading bar toward the second heading bar.
 17. The method of claim 1, wherein repositioning the at least one of the first heading bar or the second heading bar comprises: further exposing partially exposed content by scrolling the first section while collapsing the second section.
 18. The method of claim 1, wherein repositioning the at least one of the first heading bar or the second heading bar comprises: fully exposing partially exposed content by scrolling the first section while collapsing the second section.
 19. The method of claim 1, wherein repositioning the at least one of the first heading bar or the second heading bar comprises: causing a remainder of the first content to become visible.
 20. The method of claim 1, wherein repositioning the at least one of the first heading bar or the second heading bar comprises: causing the first heading bar to scroll a minimum distance needed to fully expose the first content of the first section.
 21. The method of claim 1, wherein repositioning the at least one of the first heading bar or the second heading bar comprises: causing the second heading bar to scroll a minimum distance needed to further expose the first content of the first section.
 22. The method of claim 1, wherein repositioning the at least one of the first heading bar or the second heading bar comprises: causing the second heading bar to scroll a minimum distance needed to fully expose the first content of the first section.
 23. The method of claim 1, wherein repositioning the at least one of the first heading bar or the second heading bar comprises: causing the first heading bar to scroll a first minimum distance needed to further expose the first content of the first section; and causing the second heading bar to scroll a second minimum distance needed to further expose the first content of the first section.
 24. The method of claim 1, wherein repositioning the at least one of the first heading bar or the second heading bar comprises: causing the first heading bar to scroll a first minimum distance needed to further expose the first content of the first section; and causing the second heading bar to scroll a second minimum distance needed to further expose the first content of the first section, the first minimum distance being equal to the second minimum distance.
 25. The method of claim 1, wherein repositioning the at least one of the first heading bar or the second heading bar comprises: causing the first heading bar to scroll a first minimum distance needed to further expose the first content of the first section; and causing the second heading bar to scroll a second minimum distance needed to further expose the first content of the first section, the first minimum distance and the second minimum distance being unequal.
 26. The method of claim 1, wherein repositioning the at least one of the first heading bar or the second heading bar comprises: causing the first heading bar to scroll a first minimum distance needed to further expose the first content of the first section while the second heading bar remains stationary.
 27. The method of claim 1, wherein repositioning the at least one of the first heading bar or the second heading bar comprises: causing the first heading bar to scroll relative to an end of the view panel such that the first content of the first section collapses as the first heading bar approaches the end of the view panel until the first heading bar reaches the second heading bar or the end of the view panel; and causing the first heading bar to dock such that the first content is hidden.
 28. The method of claim 1, wherein the second heading bar is docked such that a second content of the second section is hidden, the method further comprising: docking the first heading bar on the second heading bar to collectively form a stack of docked heading bars.
 29. An apparatus comprising: a processor; and a memory having instructions executable by the processor to cause the apparatus to: cause display, on a display device, of a view panel including a plurality of contiguous sections, each of which includes a heading bar and content; cause a portion of a first content of a first section of the plurality of contiguous sections to display on the display device by positioning a first heading bar of the first section at a first distance from a second heading bar of a second section; and responsive to a selection of the first heading bar, reposition at least one of the first heading bar or the second heading bar a second distance from each other, the second distance being greater than the first distance such that more than the portion of the first content is displayed.
 30. A non-transitory storage medium storing program instructions, execution of which in a computer causes actions comprising: causing display, on a display device, of a view panel including a plurality of contiguous sections that each includes a heading bar and content; causing a portion of a first content of a first section to display on the display device by positioning a first heading bar of the first section at a first distance from a second heading bar of a second section; and responsive to a selection of the first heading bar, repositioning at least one of the first heading bar or the second heading bar a second distance from each other, the second distance being greater than the first distance such that more than the portion of the first content is displayed. 